| FlexGrid for UWP/WinRT > FlexGrid の機能 > 編集機能 > データマップされた列 |
データマップされた列には、実際の値ではなく、キーが含まれます。たとえば、列の内容は国の 都道府県コード を表す整数であっても、対応する国名をユーザーが表示および編集できるようにします。
このシナリオでは、2行を超えるコードが必要になります。
| C# |
コードのコピー
|
|---|---|
// キーと値の辞書を構築します var dct = new Dictionary<int, string>(); foreach (var country in GetCountryNames()) { dct[dct.Count] = country } // 辞書を列に割り当てます var c = _flexEdit.Columns["都道府県コード"]; c.ValueConverter = new ColumnValueConverter(dct); c.HorizontalAlignment = HorizontalAlignment.Left; |
|
このコードは、最初に、国の 都道府県コード 値(整数)を国名(文字列)にマップする辞書を構築します。
次に、その辞書を使用して ColumnValueConverter を構築し、前の例と同様に、そのコンバータを列の ValueConverter プロパティに割り当てます。
ユーザーは、辞書に存在するすべての国を選択でき、マップされていない値を入力できなくなります。
最後に、このコードは、列の配置を左揃えに設定します。この列の実際の内容は整数値なので、デフォルトでは右揃えで配置されます。ここでは、名前を表示するため、左揃えに設定します。